package org.jadapter.servicelookup;

/**
 * Framework interface for implementing the
 * lookup
 * 
 * @author optilude
 *
 */
public interface ServiceLookupDelegate {

	/**
	 * Look up a unique service by type
	 * @param type The type of service to look for
	 * @return The service of this type, or null if not found. 
	 */
	public <T> T lookupService(Class<T> type);
	
	/**
	 * Look up a unique service by type and name
	 * @param type The type of service to look for
	 * @param name The name of the service instance to look for
	 * @return The service of this type, or null if not found. 
	 */
	public <T> T lookupService(Class<T> type, String name);
	
}
